import { defineStore } from 'pinia'
import { ref } from 'vue'

// 导出一个名为useUserStore的函数，该函数使用defineStore定义了一个名为big-user的store
export const useUserStore = defineStore(
  'big-user',
  () => {
    // 定义一个名为token的ref，初始值为空字符串
    const token = ref('')
    const userInfo = ref({})
    const userMenus = ref([])
    // 定义一个名为setToken的函数，用于设置token的值
    const setToken = (value) => {
      token.value = value
    }
    const setUserInfo = (value) => {
      userInfo.value = value
    }
    const setUserMenus = (value) => {
      userMenus.value = value
    }
    // 定义一个名为removeToken的函数，用于清空token的值
    const removeToken = () => {
      token.value = ''
    }
    // 返回一个对象，包含token、setToken和removeToken三个属性
    return {
      token,
      setToken,
      removeToken,
      setUserInfo,
      userInfo,
      setUserMenus,
      userMenus,
    }
  },
  {
    persist: true,
  },
)
